package com.whfc.ms.api.emp.service;

import com.whfc.common.result.PageData;
import com.whfc.emp.dto.AppEmpApplyDTO;
import com.whfc.emp.dto.AppEmpApplyNumDTO;
import com.whfc.emp.dto.AppEmpIdentifyDTO;
import com.whfc.emp.param.AppEmpAddParam;
import com.whfc.emp.param.AppEnpApplyCheckParam;

import java.util.Date;

/**
 * @Description 人员审批
 * @Author hw
 * @Date 2021-08-06 9:18
 * @Version 1.0
 */
public interface MsAppEmpApplyService {


    /**
     * 人员审批列表
     *
     * @param deptId
     * @param checkResult
     * @param startTime
     * @param endTime
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageData<AppEmpApplyDTO> list(Integer deptId, Integer checkResult, Date startTime, Date endTime, Integer pageNum, Integer pageSize);

    /**
     * 人员审批详情
     *
     * @param empId
     * @return
     */
    AppEmpApplyDTO detail(Integer empId);

    /**
     * 人员审批
     *
     * @param param
     */
    void check(AppEnpApplyCheckParam param);

    /**
     * 人员申请
     *
     * @param param
     */
    void add(AppEmpAddParam param);

    /**
     * 照片识别
     *
     * @param idCardImgUrl
     * @param sessionId
     * @return
     */
    AppEmpIdentifyDTO idCardIdentify(String idCardImgUrl, String sessionId);

    /**
     * 删除申报记录
     *
     * @param empId
     */
    void del(Integer empId);

    /**
     * 统计人员审核
     *
     * @param deptId
     * @param startTime
     * @param endTime
     * @return
     */
    AppEmpApplyNumDTO num(Integer deptId, Date startTime, Date endTime);
}
